package cn.itcast.service;

import reactor.core.publisher.Flux;

public interface ChatService {

    /**
     * 带会话ID的聊天
     * @param question 问题
     * @param sessionId 会话ID
     * @return 回答
     */
    String chat(String question, String sessionId);

    /**
     * 流式聊天
     * @param question 问题
     * @return 流式回答，返回每个响应片段
     */
    Flux<String> streamChat(String question);

    /**
     * 带会话ID的流式聊天
     * @param question 问题
     * @param sessionId 会话ID
     * @return 流式回答，返回每个响应片段
     */
    Flux<String> chatStream(String question, String sessionId);
}
